1) Field of the Invention
The present invention relates to determining a speed at which an object is allowed to move (permissible speed) and controlling the speed of the object such that the speed does not exceed the permissible speed.
2) Description of the Related Art
Determination of permissible speed of an object, and control of the speed of the object such that the speed does not exceed the permissible speed are performed in everyday life. Such technology is employed in numerical control apparatuses, robot control apparatuses, sequencers, and devices that control movement of elevators, sewing machines, coordinate measuring machines, plotters, belt conveyers, automobiles, trains, and aircrafts.
Generally, if the object is moving at a high speed then more mechanical vibrations are generated than when the object is moving at a lower speed. If there are more mechanical vibrations then the precision of the operation of the object decreases. Therefore, it is desirable to determine a speed of the object at which the mechanical vibrations are in an allowable range and control the speed of movement of the object such that the speed does not exceed the permissible speed. The precision of the operation of the object can be maintained at a higher level if such control is provided.
A conventional method for determining the permissible speed of the object will now be explained. Such a method has been disclosed in Japanese Patent Application Laid-Open No. H2-219107 entitled xe2x80x9cNumerical Control Apparatusxe2x80x9d. According to the method disclosed in this patent application, a moving trajectory is set at a path on which an object sequentially passes through a plurality of target points P(1), P(2), . . . and P(n), where n is a natural number. Then the permissible speed is calculated based on segment data X(k) in a portion K starting from an arbitrary point P(k) and ending P(k+1) on this path and a maximum speed command value F0, where k is a natural number having a value that is equal to or less than n. The permissible speed is equal to or lower than a permissible normal speed which is determined in accordance with the curvature of the portion K is obtained based on segment data on the portion K, segment data on intervals in the vicinity of the interval, and the maximum speed command value F0.
Another conventional method of this type has been disclosed in Japanese Patent Application laid-Open No. H2-72414 entitled xe2x80x9cFeed Speed Control Method for Numerical Controlxe2x80x9d. According to the method disclosed in this patent application, the permissible speed is determined based on the speed difference between two adjacent blocks. That is, a maximum speed change, which is determined in accordance with a maximum motor torque or a shock applied to a machine, is obtained in advance. A workpiece is machined at a maximum cutting speed which is independently set. If a speed change for each axis in a corner exceeds the maximum speed change, a maximum feed speed which does not exceed the maximum speed change is obtained.
The conventional methods have following disadvantage. That is, if the acceleration or speed difference is suppressed so as not to be greater than the permissible value, mechanical vibration may be indirectly decreased. However, recently the speed of movement is increasing day by day to reduce the duration of the movement. It has been found that the conventional method cannot sufficiently suppress mechanical vibration when the speed of movement is high.
This disadvantage will be explained while taking the method of Japanese Patent Application Laid-Open No. H2-219107 as an example. To always prevent mechanical vibration, permissible acceleration is set sufficiently low. According to this method, however, if mechanical vibration is not generated even though permissible acceleration is set high, speed is unnecessarily decreased, with the result that working efficiency is disadvantageously deteriorated.
The conventional disadvantage will be explained concretely with reference to FIG. 15 to FIG. 19. An instance when an object operates in accordance with a command path and a command speed as shown in FIG. 15 will first be explained. Reference symbols P0, P1, and P2 denote start and end points of two segments that constitute the command path. The object moves on the command path from point P0 to P1, and then from point P1 to P2. Reference symbol F1000 show near each segment denotes the command speed (mm/min).
When the object moves at the command speed, for example, speed differences which occur at the point P1 are expressed as follows:
X-axis: 1000xc3x97(cos(xcfx80/2)xe2x88x92cos(xe2x88x92xcfx80/2))=0
Y-axis: 1000xc3x97(sin(xcfx802)xe2x88x92sin(xe2x88x92xcfx80/2))=10002.
If permissible speed differences on the X and Y axes are both set at 3002, the permissible speed of the object at the point P1 is expressed as follows:
1000xc3x973002/10002=300.
FIG. 16 shows vibrations generated in a machine if the object passes through or near the point P1 at a speed of 300. More specifically, FIG. 16 shows an acceleration waveform on the Y axis. Since acceleration on the X axis is 0, waveform on the X axis will not be explained. The resonance frequency of the machine is set at 20 Hz and the damping ratio thereof is set at 0.1. In this case, generated mechanical vibration is a maximum of 0.78 m/s2.
An instance when the object operates in accordance with a command path and a command speed as shown in FIG. 17 will next be explained. In FIG. 17, reference symbols P0 to P3 denote start/endpoints of respective segments which constitute the command path. The object moves on the command path in the order of P0, P1, P2 and P3. Although the points P1 and P2 are seen to overlap each other, they are actually apart by 10 xcexcm (see FIG. 18).
If the object passes at the command speed, for example, speed differences which occur at the point P1 are expressed as follows:
X-axis: 1000xc3x97(cos(xcfx80/2)xe2x88x92cos(0))=1000xc3x97(2/2xe2x88x921)
Y-axis: 1000xc3x97(sin(xcfx80/2)xe2x88x92sin(0))=1000xc3x97({fraction (2/2)}).
If permissible speed differences on the X and Y axes are both set at 30012, the permissible speed of an object at the point P1 is expressed as follows:
1000xc3x97min(3002/(10002/2xe2x88x921)),3002/(1000(2/2))=6000.
FIG. 19 shows vibration generated in a machine if the object passes through or near the point P1 at a speed of 600. More specifically, FIG. 19 shows an acceleration waveform on the Y axis. Since acceleration on the X axis is lower than that of the Y axis, it is omitted therein. In this case, generated mechanical vibration is a maximum of 1.26 m/s2.
As can be seen, according to the conventional art, as shown in FIGS. 15 and 17, even with a slight difference in shape, the magnitude of generated mechanical vibration greatly differs and the mechanical vibration cannot be accurately managed.
Specifically, if the mechanical vibration is limited to not greater than 0.78 m/s2, a permissible speed difference should be set at half the current permissible speed difference, i.e., 15012. If so set, however, the permissible speed of the object on the command path shown in FIG. 15 becomes 150 (at which permissible speed, vibration is 0.39 m/s2). It is obvious that the speed is decreased excessively. In other words, working efficiency is deteriorated.
It is an object of the present invention to provide a technology for determining the permissible speed of an object and controlling the speed of the object based on the calculated permissible speed.
According to the method and apparatus for determining a permissible speed of the object of the present invention, command path and command speed within a predetermined range is read and a speed command for each time is calculated based on the read command path and the command speed. Subsequently, a frequency band component that corresponds to mechanical vibration due to the movement of the object and which is included in a speed command for the each time is calculated and a permissible speed at which the frequency band component becomes equal to or smaller than a preset reference value is calculated. The predetermined range may be a time required for the object to move along the command path from the specific point or the specific region or a distance for which the object moves along the command path from the specific point or the specific region.
According to the apparatus of the present invention, the moving speed of the object is controlled such that the speed does not exceed the permissible speed calculated as mentioned above.
These and other objects, features and advantages of the present invention are specifically set forth in or will become apparent from the following detailed descriptions of the invention when read in conjunction with the accompanying drawings.